package pe.edu.claretiano.admisionmatricula.admision.daoimpl;

import java.util.ArrayList;
import java.util.List;

import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.log4j.Logger;

import pe.edu.claretiano.admisionmatricula.admision.dao.DocumentoRequeridoDao;
import pe.edu.claretiano.admisionmatricula.bean.DocumentoRequerido;
import pe.edu.claretiano.admisionmatricula.bean.SolicitudAdmision;
import pe.edu.claretiano.admisionmatricula.bean.SolicitudMatricula;
import pe.edu.claretiano.admisionmatricula.factory.MyBatisConnectionFactory;

public class DocumentoRequeridoDaoImpl implements DocumentoRequeridoDao {
	
	
	
	private final static Logger logDocumentoRequeridoDaoImpl = Logger
			.getLogger(DocumentoRequeridoDaoImpl.class);
	private SqlSessionFactory sqlSessionFactory;
	
	public DocumentoRequeridoDaoImpl(){
		sqlSessionFactory = MyBatisConnectionFactory.getSqlSessionFactory();
	}

	@Override
	public List<DocumentoRequerido> listarDocumentoRequerido(
			SolicitudAdmision paramSolAdm) {
		
		SqlSession session = sqlSessionFactory.openSession();
		List<DocumentoRequerido> lstDocReq=new ArrayList<DocumentoRequerido>();				
		try {
			lstDocReq =  (List<DocumentoRequerido>)session.selectList("DocumentoRequerido.listarDocumentoRequerido", paramSolAdm);
		} catch (Exception ex) {
			logDocumentoRequeridoDaoImpl.error(ex.getMessage());
		} finally {
			session.close();
		}
		return lstDocReq;
	}

	@Override
	public List<DocumentoRequerido> listarDocumentoRequeridoMatricula(SolicitudMatricula paramSolMat) {
		SqlSession session = sqlSessionFactory.openSession();
		List<DocumentoRequerido> lstDocReq=new ArrayList<DocumentoRequerido>();				
		try {
			lstDocReq =  (List<DocumentoRequerido>)session.selectList("DocumentoRequerido.listarDocumentoRequeridoMatricula", paramSolMat);
		} catch (Exception ex) {
			logDocumentoRequeridoDaoImpl.error(ex.getMessage());
		} finally {
			session.close();
		}
		return lstDocReq;
	}

}
